#Author:lmq
import random

#购物车程序项目：
#要求：1、运行程序后，让用户输入支付宝余额，然后打印我们的商品列表给用户。
#　　  2、让用户输入商品编号进行商品的购买。
#　    3、用户选择商品后，检查用户的余额是否够，若够则直接扣款，不够则提醒用户。
#　　  4、用户可以随时退出购买，退出时打印用户已购买的商品和支付宝余额。
#     5.自己扩展的内容

shopping_list_name = [
     ("世界上最好喝的牛奶", 50),
     ("吃了不上火的薯片",20),
     ("世界上最好用的手机",5000),
     ("世界上最耐用的电脑",8000),
     ("世界上最好看的书",100),
]
aipay = int(input("请输入余额："))
user_shopping_list = []

while True:

    print("----------♥商品♥----------")
    # 打印商品信息
    for item in shopping_list_name:
        print(shopping_list_name.index(item),item)
    # 1.判断的是是不是商品编号还是退出指令？
    user_chioce = input("请输入商品编号（或者输入“退出”检查购物信息）：")
    # 2.判断字符串类型
    if user_chioce.isdigit():
        user_chioce = int(user_chioce)
        if user_chioce >= 0 and user_chioce < len(shopping_list_name):
            if aipay>shopping_list_name[user_chioce][1]:
                user_shopping_list.append(shopping_list_name[user_chioce])
                money02 = aipay-shopping_list_name[user_chioce][1]
                print("已为您添加该商品，您的余额还有%s" %(money02))
            else:
                print("您的余额不足，无法购买该商品")
        else:
            print("商品不存在")
    elif user_chioce == "退出":
        for item in user_shopping_list:
            print("-----♥您的购物清单♥----")
        for item in user_shopping_list:
            print("你买了 %s" %(item[0]),"花了%s块钱"%(item[1]))
        print("您的余额还有%s"%(money02))
        print("您添加了%s到购物车中" %(user_chioce), "您的余额还有{money}".format(money=money02))
        print()
        break
    else:
        print("您输入的信息有误，请重新输入")